import axios from 'axios'
import {
  Notification
} from 'element-ui'


// 法院环境
// const API = 'http://151.0.191.134:9607' // 用户相关 模板接口的9（邓论） 红头文件
// const correct_API = 'http://151.0.165.40:9011/' // 校对相关 # 校对（江贵） 
// const retrieval_API = 'http://151.0.191.134:9607' //红头文件
// const knowledge_API = 'http://151.101.1.34:30880' // 知识库相关
// const sucai_API = 'https://g.t.dacube.cn/INTERFS' // 互联网素材
// const cA_API = 'http://151.0.191.134:9088' // fetch 查询ca 用户信息（邓论）
// const cA_API2 = 'http://151.101.1.34:30880'// 查询用户内部知识库

// 测试环境
const API = 'http://151.0.191.134:9607' // 用户相关 模板接口的9（邓论） 红头文件
const correct_API = 'https://jd.dacube.com.cn/' // 校对相关 # 校对（江贵） 
// const retrieval_API = 'http://151.0.191.134:9607' //红头文件
const retrieval_API = 'https://g.dacube.cn/' + 'DACUBE-OFFICIAL-DOCUMENT/'
const knowledge_API = 'https://g.dacube.cn/INTERFS' // 知识库相关
const sucai_API = 'https://g.t.dacube.cn/INTERFS' // 互联网素材
const cA_API = 'http://151.0.191.134:9088' // fetch 查询ca 用户信息（邓论）
const cA_API2 = 'http://151.101.1.34:30880'// 查询用户内部知识库


const apiArr = [{
  service: null,
  baseURL: API + 'CP-USER/'
},
{
  service: null,
  baseURL: correct_API
},
{
  service: null,
  baseURL: retrieval_API
},
{
  service: null,
  baseURL: retrieval_API
},
{
  service: null,
  baseURL: knowledge_API
},
{
  service: null,
  baseURL: sucai_API
},
{
  service: null,
  baseURL: cA_API
}
  ,
{
  service: null,
  baseURL: cA_API2
}
]

apiArr.map((v, index) => {
  // let headers = {
  //   // "Content-Type": "application/json;charset=UTF-8",
  //   // "usetype": "pc",
  //   // "version": "2.0",
  //   // "api_version_code": "100",
  //   // "login_type": "wps"
  // }
  v.service = axios.create({
    // eslint-disable-next-line
    baseURL: v.baseURL, // api 的 base_url
    // headers: headers,
    // timeout: 60000
  })
  // request拦截器
  v.service.interceptors.request.use(
    config => {
      // console.log('787',!config.url.includes('/office/type/list'));
      if (config.url !== '/admin/info'&& !config.url.includes('/office/type/list')&& !config.url.includes('/office/check')) {
        const token = window.localStorage.getItem('token')||''
        if (token) {
          config.headers['token'] = token||''// 让每个请求携带自定义token 请根据实际情况自行修改
        }
      }
      return config
    },
    error => {
      Promise.reject(error)
    }
  )
  // response 拦截器
  v.service.interceptors.response.use(
    response => {
      // console.log('response',response);
      if (response.status !== 200) {
        return Promise.reject(response.data)
      } else {
        return response.data
      }
    },
    error => {
      // console.log('error',JSON.stringify(error));
      let str=JSON.stringify(error)||'系统异常，请稍后再试！'
      if(str.includes(`status":401`)){
        Notification.error({
          title: '失败',
          message:'登录口令已失效，请重新登录！'
        })
        window.c_methods.removeToken()
        return Promise.reject('401')
      }else{
        Notification.error({
          title: '失败',
          message:'请求超时！'
        })
      }
      return Promise.reject(error)
    }
  )
})

let userService = apiArr[0].service
let correctService = apiArr[1].service
let writingService = apiArr[2].service//智能写作模块
let retrievalService = apiArr[3].service
let knowledgeService = apiArr[4].service //知识库接口
let sucaiService = apiArr[5].service //互联网素材
let caService = apiArr[6].service //ca 用户
let caService2 = apiArr[7].service //ca 用户


export {
  userService,
  correctService,
  writingService,
  retrievalService,
  knowledgeService,
  sucaiService,
  caService,
  caService2
}